import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Scanner;

public class Day_seven {

    //拼三角
    //链接：https://ac.nowcoder.com/acm/problem/219046
    //来源：牛客网
    //给出6根棍子，能否在选出3根拼成一个三角形的同时剩下的3根也能组成一个三角形？
    //输入描述:
    //首先在一行中给出一个t,1≤t≤10^3，代表测试数据的组数
    //接下来t行，每行给出6个数字代表棍子长度，棍子长度为正且小于10^9
    //输出描述:
    //在一行中输出 “Yes” or “No”
    //示例1
    //输入
    //2
    //1 1 1 1 1 1
    //1 2 3 4 5 6
    //输出
    //Yes
    //No
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        int n = s.nextInt();
        int[] nums = new int[6];

        while (n-- != 0){
            for (int i = 0; i < 6; i++) {
                nums[i] = s.nextInt();
            }
            Arrays.sort(nums);//排序从小到大

            if (nums[0] +nums[1] >nums[2] && nums[3] +nums[4] >nums[5] ||
                    nums[0] +nums[2] >nums[3] && nums[1] +nums[4] >nums[5] ||
                    nums[0] +nums[4] >nums[5] && nums[1] +nums[2] >nums[3] ||
                    nums[0] +nums[3] >nums[4] && nums[1] +nums[2] >nums[5] ){
                System.out.println("Yes");
            }else{
                System.out.println("No");
            }
            //n--;
        }
    }



    //岛屿数量
    //描述
    //给一个01矩阵，1代表是陆地，0代表海洋， 如果两个1相邻，那么这两个1属于同一个岛。我们只考虑上下左右为相邻。
    //岛屿: 相邻陆地可以组成一个岛屿（相邻:上下左右） 判断岛屿个数。
    //例如：
    //输入
    //[
    //[1,1,0,0,0],
    //[0,1,0,1,1],
    //[0,0,0,1,1],
    //[0,0,0,0,0],
    //[0,0,1,1,1]
    //]
    //对应的输出为3
    //(注：存储的01数据其实是字符'0','1')
    //示例1
    //输入：
    //[[1,1,0,0,0],[0,1,0,1,1],[0,0,0,1,1],[0,0,0,0,0],[0,0,1,1,1]]
    //返回值：
    //3

    //示例2
    //输入：
    //[[0]]
    //返回值：
    //0
    int m;
    int n;
    int[] dx = {0,0,-1,1};
    int[] dy = {1,-1,0,0};
    boolean[][] vis = new boolean[210][210];
    public int solve (char[][] grid) {
        m = grid.length;
        n = grid[0].length;
        int ret = 0;

        for (int i = 0; i < m; i++) {
            for (int j = 0; j < n; j++) {
                if (grid[i][j] == '1' && !vis[i][j]){
                    ret++;
                    dfs(grid,i,j);
                }
            }
        }
        return ret;
    }

    public void dfs(char[][] grid,int i,int j){
        vis[i][j] = true;

        for (int k = 0; k < 4; k++) {
            int x = i +dx[k], y = j +dy[k];
            if(x>=0 && x<m && y>=0 && y<n && grid[x][y]=='1' && !vis[x][y]){
                dfs(grid,x,y);
            }
        }
    }





    //在字符串中找出连续最长的数字串（用双指针
    //描述
    //读入一个字符串str，输出字符串str中的连续最长的数字串
    //输入描述：
    //个测试输入包含1个测试用例，一个字符串str，长度不超过255。
    //输出描述：
    //在一行内输出str中里连续最长的数字串。
    //示例1
    //输入：
    //abcd12345ed125ss123456789
    //输出：
    //123456789

    public static void main1(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        //char[] ch = br.readLine().toCharArray();
        String st = br.readLine();
        char[] ch = st.toCharArray();

        int start = 0;
        int len = 0;

        for (int i = 0; i < ch.length; i++) {
           if (ch[i] >='0' && ch[i] <= '9'){
               int j = i;
               while(j< ch.length && ch[j] >='0' &&ch[j] <='9')
                   j++;
               if (j-i>len){
                   start = i;
                   len = j-i;
               }
               i = j;
           }
        }

        int length = start + len;
        for (int i = start; i < length; i++) {
            System.out.println(ch[i]);
        }
    }
}
